<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.prime.com.tr/ui"
	template="../pages/template.xhtml">
	<ui:define name="head">
		<title>#{msg.departamentosTitle}</title>
	</ui:define>
	<ui:define name="left"></ui:define>
	<ui:define name="center">
		<h:form prependId="false" styleClass="formPrincipal">
			<p:growl id="msgs" showDetail="true" />
			<!-- Mirar el p:collector -->
			<p:ajaxStatus style="width:16px;height:16px;">
				<f:facet name="start">
					<h:graphicImage value="../images/loading.gif" />
				</f:facet>
				<f:facet name="complete">
					<h:outputText value="" />
				</f:facet>
			</p:ajaxStatus>
			<p:panel header="#{msg.nuevoDepartamento}" id="nuevo">
				<h:panelGrid columns="8">
					<h:outputLabel value="#{msg.nombre}:"></h:outputLabel>
					<p:inputText value="#{departamentosBean.newDepartamento.nombre}"></p:inputText>
					<h:outputLabel value="#{msg.telefono}:"></h:outputLabel>
					<p:inputText value="#{departamentosBean.newDepartamento.telefono}"></p:inputText>
					<h:outputLabel value="#{msg.direccion}:"></h:outputLabel>
					<p:inputText style="width:260px;"
						value="#{departamentosBean.newDepartamento.direccion}"></p:inputText>
					<p:commandButton value="#{msg.guardar}"
						action="#{departamentosBean.addDepartamento}"
						update="departamentos,nuevo,msgs">
						<p:collector value="#{departamentosBean.newDepartamento}"
							addTo="#{departamentosBean.departamentos}" />
					</p:commandButton>
					<p:commandButton value="#{msg.limpiar}" type="reset"></p:commandButton>
				</h:panelGrid>
			</p:panel>
			<!-- Mirar las tablas seleccionmode y row edition -->
			<p:panel header="#{msg.listadoDepartamentos}" style="margin-top: 10px;"
				id="departamentos">
				<p:dataTable id="departamentosList" styleClass="table"
					value="#{departamentosBean.departamentos}" var="departamentoVar"
					rowEditListener="#{departamentosBean.updateDepartamento}"
					emptyMessage="#{msg.tablaVacia}">

					<p:column headerText="#{msg.nombre}" style="width:125px">
						<p:cellEditor>
							<f:facet name="output">
								<h:outputText value="#{departamentoVar.nombre}" />
							</f:facet>
							<f:facet name="input">
								<p:inputText value="#{departamentoVar.nombre}"
									style="width:100%" />
							</f:facet>
						</p:cellEditor>
					</p:column>
					<p:column headerText="#{msg.telefono}" style="width:125px">
						<p:cellEditor>
							<f:facet name="output">
								<h:outputText value="#{departamentoVar.telefono}" />
							</f:facet>
							<f:facet name="input">
								<p:inputText value="#{departamentoVar.telefono}"
									style="width:100%" />
							</f:facet>
						</p:cellEditor>
					</p:column>

					<p:column headerText="#{msg.direccion}" style="width:125px">
						<p:cellEditor>
							<f:facet name="output">
								<h:outputText value="#{departamentoVar.direccion}" />
							</f:facet>
							<f:facet name="input">
								<p:inputText value="#{departamentoVar.direccion}"
									style="width:100%" />
							</f:facet>
						</p:cellEditor>
					</p:column>
					<p:column headerText="#{msg.opciones}" style="width:50px">
						<p:rowEditor />
						<p:commandLink title="#{msg.eliminar}" styleClass="ui-icon ui-icon-close" onclick="confirmDelete.show();">
							<f:setPropertyActionListener
								target="#{departamentosBean.newDepartamento}"
								value="#{departamentoVar}"></f:setPropertyActionListener>
						</p:commandLink>
					</p:column>
				</p:dataTable>
				<p:confirmDialog id="confirmDialog" message="#{msg.eliminarDepartamento}"
					header="#{msg.confirmacion}" severity="alert" widgetVar="confirmDelete"
					modal="true">
					<p:commandButton value="#{msg.si}"
						action="#{departamentosBean.deleteDepartamento}"
						update="departamentosList, departamentos,msgs"
						oncomplete="confirmDelete.hide();" />
					<p:commandButton value="#{msg.no}" onclick="confirmDelete.hide();"
						type="button" />
				</p:confirmDialog>
			</p:panel>
		</h:form>
	</ui:define>
</ui:composition>